<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Entitas: Entitas.Entity Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Entitas
   &#160;<span id="projectnumber">1.13.0</span>
   </div>
   <div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('class_entitas_1_1_entity.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="#events">Events</a> &#124;
<a href="class_entitas_1_1_entity-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Entitas.Entity Class Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for Entitas.Entity:</div>
<div class="dyncontent">
 <div class="center">
  <img src="class_entitas_1_1_entity.png" usemap="#Entitas.Entity_map" alt=""/>
  <map id="Entitas.Entity_map" name="Entitas.Entity_map">
<area href="interface_entitas_1_1_i_entity.html" alt="Entitas.IEntity" shape="rect" coords="0,56,90,80"/>
<area href="interface_entitas_1_1_i_a_e_r_c.html" alt="Entitas.IAERC" shape="rect" coords="0,0,90,24"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a192ed8de1dc5587d7e75116f653452ad"><td class="memItemLeft" align="right" valign="top"><a id="a192ed8de1dc5587d7e75116f653452ad"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>Initialize</b> (int <a class="el" href="class_entitas_1_1_entity.html#a35644f781a2567877dade3e39932e405">creationIndex</a>, int <a class="el" href="class_entitas_1_1_entity.html#ad3deee62c9a0392eea6b93e5356f9107">totalComponents</a>, Stack&lt; <a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> &gt;[] <a class="el" href="class_entitas_1_1_entity.html#ab8bb69649e83e05c595d006d205f11b2">componentPools</a>, <a class="el" href="class_entitas_1_1_context_info.html">ContextInfo</a> <a class="el" href="class_entitas_1_1_entity.html#ae8347b174468c55c485e0265254d9c91">contextInfo</a>=null, <a class="el" href="interface_entitas_1_1_i_a_e_r_c.html">IAERC</a> <a class="el" href="class_entitas_1_1_entity.html#a1b1726bdfa1fbcee8e0f2541bc9f1e84">aerc</a>=null)</td></tr>
<tr class="separator:a192ed8de1dc5587d7e75116f653452ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2efb82aa6e7266b71492ef694b712fd"><td class="memItemLeft" align="right" valign="top"><a id="ab2efb82aa6e7266b71492ef694b712fd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>Reactivate</b> (int <a class="el" href="class_entitas_1_1_entity.html#a35644f781a2567877dade3e39932e405">creationIndex</a>)</td></tr>
<tr class="separator:ab2efb82aa6e7266b71492ef694b712fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a684593bfe766e01ff4776bfbf841156a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a684593bfe766e01ff4776bfbf841156a">AddComponent</a> (int index, <a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> component)</td></tr>
<tr class="separator:a684593bfe766e01ff4776bfbf841156a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a288fdf38196ce4d54597f08bf5989a19"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a288fdf38196ce4d54597f08bf5989a19">RemoveComponent</a> (int index)</td></tr>
<tr class="separator:a288fdf38196ce4d54597f08bf5989a19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf6272815f51c3ca69115c62772836df"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#adf6272815f51c3ca69115c62772836df">ReplaceComponent</a> (int index, <a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> component)</td></tr>
<tr class="separator:adf6272815f51c3ca69115c62772836df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a193c4b6412a24c9461424b060ab15506"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a193c4b6412a24c9461424b060ab15506">GetComponent</a> (int index)</td></tr>
<tr class="separator:a193c4b6412a24c9461424b060ab15506"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78627b36ab878dde662b3d8267641ef2"><td class="memItemLeft" align="right" valign="top"><a id="a78627b36ab878dde662b3d8267641ef2"></a>
<a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a78627b36ab878dde662b3d8267641ef2">GetComponents</a> ()</td></tr>
<tr class="memdesc:a78627b36ab878dde662b3d8267641ef2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns all added components. <br /></td></tr>
<tr class="separator:a78627b36ab878dde662b3d8267641ef2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cdd88f321c07186540515ed37d07d85"><td class="memItemLeft" align="right" valign="top"><a id="a1cdd88f321c07186540515ed37d07d85"></a>
int []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a1cdd88f321c07186540515ed37d07d85">GetComponentIndices</a> ()</td></tr>
<tr class="memdesc:a1cdd88f321c07186540515ed37d07d85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns all indices of added components. <br /></td></tr>
<tr class="separator:a1cdd88f321c07186540515ed37d07d85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30a8ae77453c6878d45f3c1cbe31bb03"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a30a8ae77453c6878d45f3c1cbe31bb03">HasComponent</a> (int index)</td></tr>
<tr class="separator:a30a8ae77453c6878d45f3c1cbe31bb03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee5ffe85bc1fa4fb5dc21c0a13058ffe"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#aee5ffe85bc1fa4fb5dc21c0a13058ffe">HasComponents</a> (int[] indices)</td></tr>
<tr class="separator:aee5ffe85bc1fa4fb5dc21c0a13058ffe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e941463e3273213aee9a6d1071a8d6d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a9e941463e3273213aee9a6d1071a8d6d">HasAnyComponent</a> (int[] indices)</td></tr>
<tr class="separator:a9e941463e3273213aee9a6d1071a8d6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7bf22d8069c034a06268910c683a625"><td class="memItemLeft" align="right" valign="top"><a id="ae7bf22d8069c034a06268910c683a625"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#ae7bf22d8069c034a06268910c683a625">RemoveAllComponents</a> ()</td></tr>
<tr class="memdesc:ae7bf22d8069c034a06268910c683a625"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes all components. <br /></td></tr>
<tr class="separator:ae7bf22d8069c034a06268910c683a625"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fe0a1767dd738efda0dfb787ad9aaa7"><td class="memItemLeft" align="right" valign="top">Stack&lt; <a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a6fe0a1767dd738efda0dfb787ad9aaa7">GetComponentPool</a> (int index)</td></tr>
<tr class="separator:a6fe0a1767dd738efda0dfb787ad9aaa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a244cbd513f258aa8778198e8270dde06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a244cbd513f258aa8778198e8270dde06">CreateComponent</a> (int index, Type type)</td></tr>
<tr class="separator:a244cbd513f258aa8778198e8270dde06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa39f7df6971b2436c7775c71c6ab24bd"><td class="memItemLeft" align="right" valign="top">T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#aa39f7df6971b2436c7775c71c6ab24bd">CreateComponent&lt; T &gt;</a> (int index)</td></tr>
<tr class="separator:aa39f7df6971b2436c7775c71c6ab24bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fc81e2607c8ee24521d9b27019ef328"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a9fc81e2607c8ee24521d9b27019ef328">Retain</a> (object owner)</td></tr>
<tr class="separator:a9fc81e2607c8ee24521d9b27019ef328"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad38c42d47e73ad68c4e93db53665aa61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#ad38c42d47e73ad68c4e93db53665aa61">Release</a> (object owner)</td></tr>
<tr class="separator:ad38c42d47e73ad68c4e93db53665aa61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca53021bab40fc432212d2e0cb553cd2"><td class="memItemLeft" align="right" valign="top"><a id="aca53021bab40fc432212d2e0cb553cd2"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>Destroy</b> ()</td></tr>
<tr class="separator:aca53021bab40fc432212d2e0cb553cd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32d532d719c4bed20a93d712eb828a39"><td class="memItemLeft" align="right" valign="top"><a id="a32d532d719c4bed20a93d712eb828a39"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>InternalDestroy</b> ()</td></tr>
<tr class="separator:a32d532d719c4bed20a93d712eb828a39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8908c3b99764d7b2535d00ba9c887c3"><td class="memItemLeft" align="right" valign="top"><a id="aa8908c3b99764d7b2535d00ba9c887c3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>RemoveAllOnEntityReleasedHandlers</b> ()</td></tr>
<tr class="separator:aa8908c3b99764d7b2535d00ba9c887c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a062ae860c3528091f8c0fd5b88667694"><td class="memItemLeft" align="right" valign="top">override string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a062ae860c3528091f8c0fd5b88667694">ToString</a> ()</td></tr>
<tr class="separator:a062ae860c3528091f8c0fd5b88667694"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:ad3deee62c9a0392eea6b93e5356f9107"><td class="memItemLeft" align="right" valign="top"><a id="ad3deee62c9a0392eea6b93e5356f9107"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#ad3deee62c9a0392eea6b93e5356f9107">totalComponents</a><code> [get]</code></td></tr>
<tr class="memdesc:ad3deee62c9a0392eea6b93e5356f9107"><td class="mdescLeft">&#160;</td><td class="mdescRight">The total amount of components an entity can possibly have. <br /></td></tr>
<tr class="separator:ad3deee62c9a0392eea6b93e5356f9107"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35644f781a2567877dade3e39932e405"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a35644f781a2567877dade3e39932e405">creationIndex</a><code> [get]</code></td></tr>
<tr class="separator:a35644f781a2567877dade3e39932e405"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93e43dc3a3668ca457db9d3609405ff9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a93e43dc3a3668ca457db9d3609405ff9">isEnabled</a><code> [get]</code></td></tr>
<tr class="separator:a93e43dc3a3668ca457db9d3609405ff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8bb69649e83e05c595d006d205f11b2"><td class="memItemLeft" align="right" valign="top">Stack&lt; <a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> &gt; []&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#ab8bb69649e83e05c595d006d205f11b2">componentPools</a><code> [get]</code></td></tr>
<tr class="separator:ab8bb69649e83e05c595d006d205f11b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8347b174468c55c485e0265254d9c91"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_entitas_1_1_context_info.html">ContextInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#ae8347b174468c55c485e0265254d9c91">contextInfo</a><code> [get]</code></td></tr>
<tr class="separator:ae8347b174468c55c485e0265254d9c91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b1726bdfa1fbcee8e0f2541bc9f1e84"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interface_entitas_1_1_i_a_e_r_c.html">IAERC</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a1b1726bdfa1fbcee8e0f2541bc9f1e84">aerc</a><code> [get]</code></td></tr>
<tr class="separator:a1b1726bdfa1fbcee8e0f2541bc9f1e84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55d42d47d2678137c14a693f2039cd6c"><td class="memItemLeft" align="right" valign="top"><a id="a55d42d47d2678137c14a693f2039cd6c"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a55d42d47d2678137c14a693f2039cd6c">retainCount</a><code> [get]</code></td></tr>
<tr class="memdesc:a55d42d47d2678137c14a693f2039cd6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of objects that retain this entity. <br /></td></tr>
<tr class="separator:a55d42d47d2678137c14a693f2039cd6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_interface_entitas_1_1_i_entity"><td colspan="2" onclick="javascript:toggleInherit('properties_interface_entitas_1_1_i_entity')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a></td></tr>
<tr class="memitem:aaa92759ead347e847a51a8baaf8f8133 inherit properties_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="aaa92759ead347e847a51a8baaf8f8133"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>totalComponents</b><code> [get]</code></td></tr>
<tr class="separator:aaa92759ead347e847a51a8baaf8f8133 inherit properties_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a469432b11a3e1707a603405f0f00bb7b inherit properties_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="a469432b11a3e1707a603405f0f00bb7b"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>creationIndex</b><code> [get]</code></td></tr>
<tr class="separator:a469432b11a3e1707a603405f0f00bb7b inherit properties_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ec2744f6c871c5b7ae994b836337729 inherit properties_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="a3ec2744f6c871c5b7ae994b836337729"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isEnabled</b><code> [get]</code></td></tr>
<tr class="separator:a3ec2744f6c871c5b7ae994b836337729 inherit properties_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6f616d85bdf233da0e7b7a47033a8d5 inherit properties_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="ac6f616d85bdf233da0e7b7a47033a8d5"></a>
Stack&lt; <a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> &gt; []&#160;</td><td class="memItemRight" valign="bottom"><b>componentPools</b><code> [get]</code></td></tr>
<tr class="separator:ac6f616d85bdf233da0e7b7a47033a8d5 inherit properties_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a051774adf86cf321d82e04e3b228a879 inherit properties_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="a051774adf86cf321d82e04e3b228a879"></a>
<a class="el" href="class_entitas_1_1_context_info.html">ContextInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><b>contextInfo</b><code> [get]</code></td></tr>
<tr class="separator:a051774adf86cf321d82e04e3b228a879 inherit properties_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f225913ae2863c66cbb6374480f6c6b inherit properties_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="a7f225913ae2863c66cbb6374480f6c6b"></a>
<a class="el" href="interface_entitas_1_1_i_a_e_r_c.html">IAERC</a>&#160;</td><td class="memItemRight" valign="bottom"><b>aerc</b><code> [get]</code></td></tr>
<tr class="separator:a7f225913ae2863c66cbb6374480f6c6b inherit properties_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_interface_entitas_1_1_i_a_e_r_c"><td colspan="2" onclick="javascript:toggleInherit('properties_interface_entitas_1_1_i_a_e_r_c')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="interface_entitas_1_1_i_a_e_r_c.html">Entitas.IAERC</a></td></tr>
<tr class="memitem:afd673d4166abc7a34693cf1b3a48af7c inherit properties_interface_entitas_1_1_i_a_e_r_c"><td class="memItemLeft" align="right" valign="top"><a id="afd673d4166abc7a34693cf1b3a48af7c"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>retainCount</b><code> [get]</code></td></tr>
<tr class="separator:afd673d4166abc7a34693cf1b3a48af7c inherit properties_interface_entitas_1_1_i_a_e_r_c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="events"></a>
Events</h2></td></tr>
<tr class="memitem:ae32e6949d12be079ed24181dca78f928"><td class="memItemLeft" align="right" valign="top">EntityComponentChanged&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#ae32e6949d12be079ed24181dca78f928">OnComponentAdded</a></td></tr>
<tr class="separator:ae32e6949d12be079ed24181dca78f928"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16e5c42416751abe64cfd86a9b9da887"><td class="memItemLeft" align="right" valign="top">EntityComponentChanged&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a16e5c42416751abe64cfd86a9b9da887">OnComponentRemoved</a></td></tr>
<tr class="separator:a16e5c42416751abe64cfd86a9b9da887"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83ffb44d61d4c3c137bd9377c0866e6a"><td class="memItemLeft" align="right" valign="top">EntityComponentReplaced&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a83ffb44d61d4c3c137bd9377c0866e6a">OnComponentReplaced</a></td></tr>
<tr class="separator:a83ffb44d61d4c3c137bd9377c0866e6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acdb078412aafe639f6990b8a98bcd836"><td class="memItemLeft" align="right" valign="top">EntityEvent&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#acdb078412aafe639f6990b8a98bcd836">OnEntityReleased</a></td></tr>
<tr class="separator:acdb078412aafe639f6990b8a98bcd836"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74d478839ed98c58f9ea1d84157ed016"><td class="memItemLeft" align="right" valign="top">EntityEvent&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_entitas_1_1_entity.html#a74d478839ed98c58f9ea1d84157ed016">OnDestroyEntity</a></td></tr>
<tr class="separator:a74d478839ed98c58f9ea1d84157ed016"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header events_interface_entitas_1_1_i_entity"><td colspan="2" onclick="javascript:toggleInherit('events_interface_entitas_1_1_i_entity')"><img src="closed.png" alt="-"/>&#160;Events inherited from <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a></td></tr>
<tr class="memitem:a8c27842b69b103f8e3ca59ba0e730656 inherit events_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="a8c27842b69b103f8e3ca59ba0e730656"></a>
EntityComponentChanged&#160;</td><td class="memItemRight" valign="bottom"><b>OnComponentAdded</b></td></tr>
<tr class="separator:a8c27842b69b103f8e3ca59ba0e730656 inherit events_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94545eff3bf90fb9823f454f5b1f2fea inherit events_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="a94545eff3bf90fb9823f454f5b1f2fea"></a>
EntityComponentChanged&#160;</td><td class="memItemRight" valign="bottom"><b>OnComponentRemoved</b></td></tr>
<tr class="separator:a94545eff3bf90fb9823f454f5b1f2fea inherit events_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f74d92aff907c6ae54c22e71133430d inherit events_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="a8f74d92aff907c6ae54c22e71133430d"></a>
EntityComponentReplaced&#160;</td><td class="memItemRight" valign="bottom"><b>OnComponentReplaced</b></td></tr>
<tr class="separator:a8f74d92aff907c6ae54c22e71133430d inherit events_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adbb6bb5d4cb21639c8f27058665be816 inherit events_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="adbb6bb5d4cb21639c8f27058665be816"></a>
EntityEvent&#160;</td><td class="memItemRight" valign="bottom"><b>OnEntityReleased</b></td></tr>
<tr class="separator:adbb6bb5d4cb21639c8f27058665be816 inherit events_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac217d26a9be34ac3a87f586c565b50e2 inherit events_interface_entitas_1_1_i_entity"><td class="memItemLeft" align="right" valign="top"><a id="ac217d26a9be34ac3a87f586c565b50e2"></a>
EntityEvent&#160;</td><td class="memItemRight" valign="bottom"><b>OnDestroyEntity</b></td></tr>
<tr class="separator:ac217d26a9be34ac3a87f586c565b50e2 inherit events_interface_entitas_1_1_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Use context.CreateEntity() to create a new entity and entity.Destroy() to destroy it. You can add, replace and remove <a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> to an entity. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00010">10</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a684593bfe766e01ff4776bfbf841156a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a684593bfe766e01ff4776bfbf841156a">&#9670;&nbsp;</a></span>AddComponent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Entitas.Entity.AddComponent </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a>&#160;</td>
          <td class="paramname"><em>component</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Adds a component at the specified index. You can only have one component at an index. Each component type must have its own constant index. The prefered way is to use the generated methods from the code generator. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00120">120</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a244cbd513f258aa8778198e8270dde06"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a244cbd513f258aa8778198e8270dde06">&#9670;&nbsp;</a></span>CreateComponent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> Entitas.Entity.CreateComponent </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Type&#160;</td>
          <td class="paramname"><em>type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns a new or reusable component from the componentPool for the specified component index. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00333">333</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="aa39f7df6971b2436c7775c71c6ab24bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa39f7df6971b2436c7775c71c6ab24bd">&#9670;&nbsp;</a></span>CreateComponent&lt; T &gt;()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="class_entitas_1_1_entity.html#a244cbd513f258aa8778198e8270dde06">Entitas.Entity.CreateComponent</a>&lt; T &gt; </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns a new or reusable component from the componentPool for the specified component index. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>
<div class="typeconstraint">
<dl><dt><b>Type Constraints</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>T</em></td><td>&#160;:</td><td valign="top"><em>new()</em></td><td>&#160;</td></tr>
</table>
</dd>
</dl>
</div>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00342">342</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a193c4b6412a24c9461424b060ab15506"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a193c4b6412a24c9461424b060ab15506">&#9670;&nbsp;</a></span>GetComponent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a> Entitas.Entity.GetComponent </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns a component at the specified index. You can only get a component at an index if it exists. The prefered way is to use the generated methods from the code generator. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00229">229</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a6fe0a1767dd738efda0dfb787ad9aaa7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6fe0a1767dd738efda0dfb787ad9aaa7">&#9670;&nbsp;</a></span>GetComponentPool()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Stack&lt;<a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a>&gt; Entitas.Entity.GetComponentPool </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the componentPool for the specified component index. componentPools is set by the context which created the entity and is used to reuse removed components. Removed components will be pushed to the componentPool. Use entity.CreateComponent(index, type) to get a new or reusable component from the componentPool. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00321">321</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a9e941463e3273213aee9a6d1071a8d6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e941463e3273213aee9a6d1071a8d6d">&#9670;&nbsp;</a></span>HasAnyComponent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool Entitas.Entity.HasAnyComponent </td>
          <td>(</td>
          <td class="paramtype">int []&#160;</td>
          <td class="paramname"><em>indices</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Determines whether this entity has a component at any of the specified indices. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00295">295</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a30a8ae77453c6878d45f3c1cbe31bb03"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a30a8ae77453c6878d45f3c1cbe31bb03">&#9670;&nbsp;</a></span>HasComponent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool Entitas.Entity.HasComponent </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Determines whether this entity has a component at the specified index. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00277">277</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="aee5ffe85bc1fa4fb5dc21c0a13058ffe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee5ffe85bc1fa4fb5dc21c0a13058ffe">&#9670;&nbsp;</a></span>HasComponents()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool Entitas.Entity.HasComponents </td>
          <td>(</td>
          <td class="paramtype">int []&#160;</td>
          <td class="paramname"><em>indices</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Determines whether this entity has components at all the specified indices. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00283">283</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="ad38c42d47e73ad68c4e93db53665aa61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad38c42d47e73ad68c4e93db53665aa61">&#9670;&nbsp;</a></span>Release()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Entitas.Entity.Release </td>
          <td>(</td>
          <td class="paramtype">object&#160;</td>
          <td class="paramname"><em>owner</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Releases the entity. An owner can only release an entity if it retains it. Retain/Release is part of AERC (Automatic <a class="el" href="class_entitas_1_1_entity.html">Entity</a> Reference Counting) and is used internally to prevent pooling retained entities. If you use retain manually you also have to release it manually at some point. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_a_e_r_c.html">Entitas.IAERC</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00368">368</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a288fdf38196ce4d54597f08bf5989a19"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a288fdf38196ce4d54597f08bf5989a19">&#9670;&nbsp;</a></span>RemoveComponent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Entitas.Entity.RemoveComponent </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Removes a component at the specified index. You can only remove a component at an index if it exists. The prefered way is to use the generated methods from the code generator. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00150">150</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="adf6272815f51c3ca69115c62772836df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf6272815f51c3ca69115c62772836df">&#9670;&nbsp;</a></span>ReplaceComponent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Entitas.Entity.ReplaceComponent </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a>&#160;</td>
          <td class="paramname"><em>component</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Replaces an existing component at the specified index or adds it if it doesn't exist yet. The prefered way is to use the generated methods from the code generator. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00174">174</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a9fc81e2607c8ee24521d9b27019ef328"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9fc81e2607c8ee24521d9b27019ef328">&#9670;&nbsp;</a></span>Retain()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Entitas.Entity.Retain </td>
          <td>(</td>
          <td class="paramtype">object&#160;</td>
          <td class="paramname"><em>owner</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Retains the entity. An owner can only retain the same entity once. Retain/Release is part of AERC (Automatic <a class="el" href="class_entitas_1_1_entity.html">Entity</a> Reference Counting) and is used internally to prevent pooling retained entities. If you use retain manually you also have to release it manually at some point. </p>

<p>Implements <a class="el" href="interface_entitas_1_1_i_a_e_r_c.html">Entitas.IAERC</a>.</p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00355">355</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a062ae860c3528091f8c0fd5b88667694"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a062ae860c3528091f8c0fd5b88667694">&#9670;&nbsp;</a></span>ToString()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override string Entitas.Entity.ToString </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns a cached string to describe the entity with the following format: Entity_{creationIndex}(*{retainCount})({list of components}) </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00411">411</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a id="a1b1726bdfa1fbcee8e0f2541bc9f1e84"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b1726bdfa1fbcee8e0f2541bc9f1e84">&#9670;&nbsp;</a></span>aerc</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="interface_entitas_1_1_i_a_e_r_c.html">IAERC</a> Entitas.Entity.aerc</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Automatic <a class="el" href="class_entitas_1_1_entity.html">Entity</a> Reference Counting (AERC) is used internally to prevent pooling retained entities. If you use retain manually you also have to release it manually at some point. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00066">66</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="ab8bb69649e83e05c595d006d205f11b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8bb69649e83e05c595d006d205f11b2">&#9670;&nbsp;</a></span>componentPools</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Stack&lt;<a class="el" href="interface_entitas_1_1_i_component.html">IComponent</a>&gt; [] Entitas.Entity.componentPools</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>componentPools is set by the context which created the entity and is used to reuse removed components. Removed components will be pushed to the componentPool. Use entity.CreateComponent(index, type) to get a new or reusable component from the componentPool. Use entity.GetComponentPool(index) to get a componentPool for a specific component index. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00055">55</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="ae8347b174468c55c485e0265254d9c91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae8347b174468c55c485e0265254d9c91">&#9670;&nbsp;</a></span>contextInfo</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_entitas_1_1_context_info.html">ContextInfo</a> Entitas.Entity.contextInfo</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>The contextInfo is set by the context which created the entity and contains information about the context. It's used to provide better error messages. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00060">60</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a35644f781a2567877dade3e39932e405"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35644f781a2567877dade3e39932e405">&#9670;&nbsp;</a></span>creationIndex</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int Entitas.Entity.creationIndex</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Each entity has its own unique creationIndex which will be set by the context when you create the entity. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00042">42</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a93e43dc3a3668ca457db9d3609405ff9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a93e43dc3a3668ca457db9d3609405ff9">&#9670;&nbsp;</a></span>isEnabled</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool Entitas.Entity.isEnabled</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>The context manages the state of an entity. Active entities are enabled, destroyed entities are not. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00046">46</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<h2 class="groupheader">Event Documentation</h2>
<a id="ae32e6949d12be079ed24181dca78f928"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae32e6949d12be079ed24181dca78f928">&#9670;&nbsp;</a></span>OnComponentAdded</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EntityComponentChanged Entitas.Entity.OnComponentAdded</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Occurs when a component gets added. All event handlers will be removed when the entity gets destroyed by the context. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00015">15</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a16e5c42416751abe64cfd86a9b9da887"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16e5c42416751abe64cfd86a9b9da887">&#9670;&nbsp;</a></span>OnComponentRemoved</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EntityComponentChanged Entitas.Entity.OnComponentRemoved</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Occurs when a component gets removed. All event handlers will be removed when the entity gets destroyed by the context. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00020">20</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a83ffb44d61d4c3c137bd9377c0866e6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83ffb44d61d4c3c137bd9377c0866e6a">&#9670;&nbsp;</a></span>OnComponentReplaced</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EntityComponentReplaced Entitas.Entity.OnComponentReplaced</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Occurs when a component gets replaced. All event handlers will be removed when the entity gets destroyed by the context. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00025">25</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="a74d478839ed98c58f9ea1d84157ed016"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a74d478839ed98c58f9ea1d84157ed016">&#9670;&nbsp;</a></span>OnDestroyEntity</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EntityEvent Entitas.Entity.OnDestroyEntity</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Occurs when calling entity.Destroy(). All event handlers will be removed when the entity gets destroyed by the context. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00035">35</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<a id="acdb078412aafe639f6990b8a98bcd836"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acdb078412aafe639f6990b8a98bcd836">&#9670;&nbsp;</a></span>OnEntityReleased</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EntityEvent Entitas.Entity.OnEntityReleased</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Occurs when an entity gets released and is not retained anymore. All event handlers will be removed when the entity gets destroyed by the context. </p>

<p class="definition">Definition at line <a class="el" href="_entity_8cs_source.html#l00030">30</a> of file <a class="el" href="_entity_8cs_source.html">Entity.cs</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>Entitas/Entitas/Entity/<a class="el" href="_entity_8cs_source.html">Entity.cs</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespace_entitas.html">Entitas</a></li><li class="navelem"><a class="el" href="class_entitas_1_1_entity.html">Entity</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>
